home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 February / EnigmA AMIGA RUN 04 (1996)(G.R. Edizioni)(IT)[!][issue 1996-02][Skylink CD III].iso / earcd / patches / pgs3g1.lha / 3.0gUpdate / Macros.LHA / SendtoTurboText.rexx < prev    next >
OS/2 REXX Batch file  |  1995-03-24  |  3KB  |  107 lines

  1. /* $VER: SendtoTurboText.rexx 1.1b (24.03.95)
  2.    Copyright 1995 Soft-Logik Publishing Corporation
  3.    May not be distributed without Soft-Logik Publishing Corporation's express written permission */
  4.  
  5. OPTIONS RESULTS
  6. TRACE OFF
  7.  
  8. /* Make sure rexx support is opened */
  9. IF ~SHOW('L','rexxsupport.library') THEN
  10.    CALL ADDLIB('rexxsupport.library',0,-30)
  11.  
  12. ADDRESS 'PAGESTREAM'
  13.  
  14. /* If text is not selected, select the current article */
  15. getcursor characterstart sID characterend eID
  16. if sID=eID then 'selecttext all'
  17.  
  18. /* Export the article to a temp file */
  19. 'lockinterface true'
  20. 'exporttext file t:HotLinkedArticle filter ascii textcode PageStream status force'
  21. /* Eventually will just make article external, but not this version */
  22. /* 'editarticle external file t:HotLinkedArticle' */
  23. 'refresh wait'
  24.  
  25. /* set the default TurboText path */
  26. ttxpath='TurboText:TTX'
  27. preffile='PageStream3:SendtoTurboText.prefs'
  28.  
  29. /* If TurboText doesn't exist in the default path, check SendtoTurboText.prefs */
  30. if ~exists(ttxpath) then do
  31.     if open(.ifile, preffile, 'R') then do
  32.         ttxpath=readln(.ifile)
  33.         call close(.ifile)
  34.         askuser='no'
  35.         end
  36.     else do
  37.         askuser='yes'
  38.     end
  39.     /* If TurboText doesn't exist in the set pref path, ask the user where it is */
  40.     if ~exists(ttxpath) | askuser='yes' then do
  41.         getfile TITLE "'Please locate TurboText'" load path "'TurboText:'" file 'TTX' posbutton 'Ok' negbutton 'Cancel'
  42.         if RC=10 then signal cancel
  43.         ttxpath=result
  44.         if open(.ifile, preffile, 'W') then do
  45.             call writeln(.ifile, ttxpath)
  46.             call close(.ifile)
  47.         end
  48.     end
  49. end
  50.  
  51.  
  52. /* Run TurboText */
  53. ADDRESS COMMAND
  54. 'run >nil:' ttxpath' t:HotLinkedArticle'
  55. getport
  56.  
  57. /* Wait until the ARexx port shows up */
  58. do 20
  59.     if ~show(P, 'TURBOTEXT') then call delay(50)
  60. end
  61.  
  62. /* If the ARexx port didn't show up, alert the user and exit */
  63. if ~show(P, 'TURBOTEXT') then do
  64.     ADDRESS 'PAGESTREAM'
  65.     allocarexxrequester '"Send to Editor Error!"' 368 59
  66.     reqhandle=result
  67.     addarexxgadget reqhandle EXIT 286 42 70 label "_Exit"
  68.         Exithandle=result
  69.     addarexxgadget reqhandle TEXT 8 10 352 border none string "'TurboText could not be started.'"
  70.     doarexxrequester reqhandle
  71.     freearexxrequester reqhandle
  72.     'refresh continue'
  73.     'lockinterface false'
  74.     EXIT
  75. end
  76.  
  77. /* Wait for the user to finish in TurboText */
  78. address 'TURBOTEXT'
  79. do forever
  80.     getport 'HotLinkedArticle'
  81.     if rc=0 then call delay(50)
  82.     else signal update
  83. end
  84.  
  85. /* Update PageStream and exit */
  86. UPDATE:
  87. ADDRESS 'PAGESTREAM'
  88. 'screentofront'
  89. /* Eventually will just make article external, but not this version */
  90. /* 'editarticle path t:HotLinkedArticle' */
  91. /* 'editarticle internal' */
  92.  
  93. 'inserttext file t:HotLinkedArticle filter ascii textcode PageStream'
  94.  
  95. /* deselect the text if rquired */
  96. if sID=eID then selecttext none
  97.  
  98. signal cancel
  99.  
  100. CANCEL:
  101. ADDRESS 'PAGESTREAM'
  102. 'refresh continue'
  103. 'lockinterface false'
  104. ADDRESS COMMAND
  105. 'delete t:HotLinkedArticle'
  106. EXIT
  107.